package top.chenbn.guli.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 订单
 *
 * @author chenbn
 * @since 2020-07-20
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_order")
@ApiModel(value = "Order对象", description = "订单")
public class Order implements Serializable {

  private static final long serialVersionUID = 1L;

  @TableId(value = "id", type = IdType.ID_WORKER_STR)
  private String id;

  @ApiModelProperty(value = "订单号")
  private String orderNo;

  @ApiModelProperty(value = "课程id")
  private String courseId;

  @ApiModelProperty(value = "课程名称")
  private String courseTitle;

  @ApiModelProperty(value = "课程封面")
  private String courseCover;

  @ApiModelProperty(value = "讲师名称")
  private String teacherName;

  @ApiModelProperty(value = "会员id")
  private String memberId;

  @ApiModelProperty(value = "会员昵称")
  private String nickname;

  @ApiModelProperty(value = "会员手机")
  private String mobile;

  @ApiModelProperty(value = "订单金额（分）")
  private BigDecimal totalFee;

  @ApiModelProperty(value = "支付类型（1：微信 2：支付宝）")
  private Integer payType;

  @ApiModelProperty(value = "订单状态（0：未支付 1：已支付）")
  private Integer status;

  @ApiModelProperty(value = "逻辑删除 1（true）已删除， 0（false）未删除")
  private Boolean isDeleted;

  @ApiModelProperty(value = "创建时间")
  private Date gmtCreate;

  @ApiModelProperty(value = "更新时间")
  private Date gmtModified;
}
